package com.yupi.springbootinit.model.vo;


import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.yupi.springbootinit.model.entity.InterfaceInfo;
import lombok.Data;
import org.springframework.beans.BeanUtils;
import java.io.Serializable;


/**
 * 接口信息视图
 *
 */
@Data
public class InterfaceInfoVO implements Serializable {

    /**
     * 主键
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 名称
     */
    private String name;

    /**
     * 描述
     */
    private String description;

    /**
     * 接口地址
     */
    private String url;

    /**
     * 请求头
     */
    private String requestHeader;

    /**
     * 响应头
     */
    private String responseHeader;

    /**
     * 接口状态（0-关闭，1-开启）
     */
    private Integer status;

    /**
     * 请求类型
     */
    private String method;

    /**
     * 创建人
     */
    private Long userId;



    @TableField(exist = false)
    private static final long serialVersionUID = 1L;


    public static InterfaceInfo voToObj(InterfaceInfoVO InterfaceInfoVO) {
        if (InterfaceInfoVO == null) {
            return null;
        }
        InterfaceInfo InterfaceInfo = new InterfaceInfo();
        BeanUtils.copyProperties(InterfaceInfoVO, InterfaceInfo);
        return InterfaceInfo;
    }

    /**
     * 对象转包装类
     *
     * @param interfaceInfo
     * @return
     */
    public static InterfaceInfoVO objToVo(InterfaceInfo interfaceInfo) {
        if (interfaceInfo == null) {
            return null;
        }
        InterfaceInfoVO InterfaceInfoVO = new InterfaceInfoVO();
        BeanUtils.copyProperties(interfaceInfo, InterfaceInfoVO);
        return InterfaceInfoVO;
    }
}
